package com.ruoyi.zhgd.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.math.BigDecimal;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 沥青拌合站数据业务对象 n_asphalt_data_weight
 *
 * @author zyb
 * @date 2023-09-06
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class NAsphaltDataWeightBo extends BaseEntity {

    /**
     * 数据主键
     */
    @NotBlank(message = "数据主键不能为空", groups = { EditGroup.class })
    private String id;

    /**
     * 沥青实际用量
     */
    @NotNull(message = "沥青实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltAct;

    /**
     * 骨料1实际用量
     */
    @NotNull(message = "骨料1实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel1Act;

    /**
     * 骨料2实际用量
     */
    @NotNull(message = "骨料2实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel2Act;

    /**
     * 骨料3实际用量
     */
    @NotNull(message = "骨料3实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel3Act;

    /**
     * 骨料4实际用量
     */
    @NotNull(message = "骨料4实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel4Act;

    /**
     * 骨料5实际用量
     */
    @NotNull(message = "骨料5实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel5Act;

    /**
     * 骨料6实际用量
     */
    @NotNull(message = "骨料6实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel6Act;

    /**
     * 粉料1实际用量
     */
    @NotNull(message = "粉料1实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder1Act;

    /**
     * 粉料2实际用量
     */
    @NotNull(message = "粉料2实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder2Act;

    /**
     * 粉料3实际用量
     */
    @NotNull(message = "粉料3实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder3Act;

    /**
     * 再生料实际用量
     */
    @NotNull(message = "再生料实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal recycledMaterialAct;

    /**
     * 骨料实际用量
     */
    @NotNull(message = "骨料实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravelAct;

    /**
     * 沥青理论用量
     */
    @NotNull(message = "沥青理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltTheo;

    /**
     * 矿粉实际用量
     */
    @NotNull(message = "矿粉实际用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powderAct;

    /**
     * 骨料1理论用量
     */
    @NotNull(message = "骨料1理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel1Theo;

    /**
     * 骨料2理论用量
     */
    @NotNull(message = "骨料2理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel2Theo;

    /**
     * 骨料3理论用量
     */
    @NotNull(message = "骨料3理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel3Theo;

    /**
     * 骨料4理论用量
     */
    @NotNull(message = "骨料4理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel4Theo;

    /**
     * 骨料5理论用量
     */
    @NotNull(message = "骨料5理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel5Theo;

    /**
     * 骨料6理论用量
     */
    @NotNull(message = "骨料6理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel6Theo;

    /**
     * 粉料1理论用量
     */
    @NotNull(message = "粉料1理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder1Theo;

    /**
     * 粉料2理论用量
     */
    @NotNull(message = "粉料2理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder2Theo;

    /**
     * 粉料3理论用量
     */
    @NotNull(message = "粉料3理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder3Theo;

    /**
     * 再生料理论用量
     */
    @NotNull(message = "再生料理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal recycledMaterialTheo;

    /**
     * 矿粉理论用量
     */
    @NotNull(message = "矿粉理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powderTheo;

    /**
     * 骨料理论用量
     */
    @NotNull(message = "骨料理论用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravelTheo;

    /**
     * 沥青冷料用量
     */
    @NotNull(message = "沥青冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltCold;

    /**
     * 骨料1冷料用量
     */
    @NotNull(message = "骨料1冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel1Cold;

    /**
     * 骨料2冷料用量
     */
    @NotNull(message = "骨料2冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel2Cold;

    /**
     * 骨料3冷料用量
     */
    @NotNull(message = "骨料3冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel3Cold;

    /**
     * 骨料4冷料用量
     */
    @NotNull(message = "骨料4冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel4Cold;

    /**
     * 骨料5冷料用量
     */
    @NotNull(message = "骨料5冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel5Cold;

    /**
     * 骨料6冷料用量
     */
    @NotNull(message = "骨料6冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel6Cold;

    /**
     * 粉料1冷料用量
     */
    @NotNull(message = "粉料1冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder1Cold;

    /**
     * 粉料2冷料用量
     */
    @NotNull(message = "粉料2冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder2Cold;

    /**
     * 粉料3冷料用量
     */
    @NotNull(message = "粉料3冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder3Cold;

    /**
     * 再生料冷料用量
     */
    @NotNull(message = "再生料冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal recycledMaterialCold;

    /**
     * 木质纤维冷料用量
     */
    @NotNull(message = "木质纤维冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal woodFiberCold;

    /**
     * 骨料冷料用量
     */
    @NotNull(message = "骨料冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravelCold;

    /**
     * 矿粉冷料用量
     */
    @NotNull(message = "矿粉冷料用量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powderCold;

    /**
     * 级配类型
     */
    @NotNull(message = "级配类型", groups = { AddGroup.class, EditGroup.class })
    private String matchType;

    /**
     * 级配code
     */
    @NotNull(message = "级配code", groups = { AddGroup.class, EditGroup.class })
    private String matchCode;

    /**
     * 时间
     */
    @NotNull(message = "时间", groups = { AddGroup.class, EditGroup.class })
    private String day;

    /**
     * 拌合楼id
     */
    @NotNull(message = "拌合楼id", groups = { AddGroup.class, EditGroup.class })
    private String stationId;

    /**
     * 拌合楼code
     */
    @NotNull(message = "拌合楼code", groups = { AddGroup.class, EditGroup.class })
    private String stationCode;

    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String deptPkid;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String baseCode;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String matchName;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String matchCodeLike;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String startDate;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String endDate;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String year;
    @NotNull(message = "", groups = { AddGroup.class, EditGroup.class })
    private String month;

    private String dischargeTime;
    private String dischargeTimeStart;
    private String dischargeTimeEnd;
    private String dataId; // 主表id
}
